package job58;

import java.util.*;

/**
 * @author tmh
 * @date 2024/10/18 18:55
 * @description
 */
public class T1 {
    public static void main(String[] args) {
        float[] f1 ={1.00000f,3.00000f,7.00000f};
        float[] f2 ={2.0000f, 5.00000f, 10.00000f};
        find_median(f1,f2);
    }

    /**
     * 代码中的类名、方法名、参数名已经指定，请勿修改，直接返回方法规定的值即可
     *
     * @param array1 float浮点型一维数组 第一个有序数组
     * @param array2 float浮点型一维数组 第二个有序数组
     * @return float浮点型
     */
    public static float find_median(float[] array1, float[] array2) {
        // write code here
        int len = array1.length*2;
        float[] result = new float[len];
        int index = 0;
        for (; index < array1.length; index++) {
            result[index] = array1[index];
        }
        for (int i =0;i<array2.length;i++) {
            result[index++] = array2[i];
        }
        for (int i =0;i<result.length;i++){
            for(int j = 0;j<result.length-1-i;j++){
                if (result[j]>result[j+1]){
                    float temp = result[j];
                    result[j]=result[j+1];
                    result[j+1]=temp;
                }
            }
        }
        float num1 = result[len / 2];
        float num2 = result[(len / 2) - 1];
        return num1 > num2 ? num2 : num1;
//        Queue<Float> queue= new PriorityQueue<>();
//        for (float v : array1) {
//            queue.offer(v);
//        }
//        for (float v : array2) {
//            queue.offer(v);
//        }
//        List<Float> list = new ArrayList<>(queue);
//        int size = list.size();
//        float num1= list.get(size/2);
//        float num2= list.get((size/2)+1);
//        return num1>num2?num2:num1;
    }
}
